#! /usr/bin/env/python3
# -*- coding:UTF-8 -*-
"""
    名称：52周存钱挑战
    作者：王楠
    版本：4.0
    日期：2020/02/27
    功能：2.0:增加存入信息的记录，以及查询
         3.0:函数化 while循环改为for
         4.0:用户输入信息 查询函数化
"""


def mnoey_saving(mnoey_peer_week, increase, total_weak):
    '''
        函数：计算存钱数
             将存钱周数，每周存入数，和累计存钱数组成一个dict，放入一个list，并返回该list
    '''
    saving = 0
    mnoey_saving_list = []
    # i = 1   #记录周数
    for i in range(total_weak):
        saving += mnoey_peer_week

        # 格式化输出
        print('第{}周存入{}元，账户累计存入{}元'.format(i + 1, mnoey_peer_week, saving))

        # 存储到l中
        mnoey_saving_list.append({
            'i': i + 1,
            'mnoey_peer_week': mnoey_peer_week,
            'saving': saving
        })

        mnoey_peer_week += increase

    return mnoey_saving_list


def mnoey_saving_query(i_query, mnoey_saving_list):
    '''
        查询某一周的存款情况
    '''
    for x in range(len(mnoey_saving_list)):
        if mnoey_saving_list[x]['i'] == i_query:
            print(
                '您第{}周存入了{}元'.format(mnoey_saving_list[x]['i'],
                                     mnoey_saving_list[x]['mnoey_peer_week']))
            print('截止到第{}累计共存入{}元'.format(mnoey_saving_list[x]['i'],
                                          mnoey_saving_list[x]['saving']))


def money_challenge():
    '''
        52周存钱函数
    '''
    mnoey_input_str = input('请分别输入第一周存钱数，每周增加存入数，存款总周数（用空格分割）：')
    mnoey_input = mnoey_input_str.split(' ')

    mnoey_peer_week = float(mnoey_input[0])  # 起始存钱
    increase = float(mnoey_input[1])         # 递增的金额
    total_weak = int(mnoey_input[2])         # 总存钱周数

    mnoey_saving_list = mnoey_saving(mnoey_peer_week, increase, total_weak)
    # 查询
    i_query = int(input('查询第几周的存钱情况：'))
    mnoey_saving_query(i_query, mnoey_saving_list)


if __name__ == "__main__":
    money_challenge()
